iT邦幫忙

2022 iThome 鐵人賽

DAY 11
0
自我挑戰組

<< 測試魔法 >> 這能動嗎?不然就測測看好了!系列 第 11

Unit Test 觀念學習 - 3A Pattern、名詞 (SUT、DOC)

  • 分享至 

  • xImage
  •  

前情提要

「......」
「.........」
「...........」
「等等艾草你什麼都沒說呀?在裝忙翹課唷?」
「誰讓今天是 blue monday 呢?」艾草心虛道 ‹‹( ˙▿˙ )/››‹‹( ˙▿˙ )/››
https://ithelp.ithome.com.tw/upload/images/20220926/20139066xPnOU1Njs9.png


今天來學習一些跟 Unit Test 有關的觀念及名詞,首先是 3A Pattern :

3A Pattern

3A Pattern 分別為底下三種單字的組合,又稱 Arrange-Act-Assert 模式:

  • Arrange:透過安排階段可以在執行行動前針對一些依賴項目去進行配置,如會有 Test Double (測試替身),或是一些準備用於行為前置的程式碼,如需先 render 對應元件。
  • Act:對被測試的函式或元件採取某種行動,如調用函式捕獲值,或是透過模擬使用者行為去操作元件等。
  • Assert:斷言,斷言函式的輸出值,或使用者操作時元件反應是否正常(能被調用或能顯示對應結果)。

關於測試的一些術語

Test Double:測試替身,可以幫助在某些不想調用依賴套件或依賴元件的情況下,模擬該依賴套件或該元件,將測試的邏輯與依賴項切分開。

SUT被測系統(System Under Test),該測試項目(如函式)本身。

DOC:依賴元件 (Depended On Component) ,該測試項目會去依賴的其他元件或函式、套件等。

明天開始會學習 Mock,並透過 3A Pattern 來註解程式碼!

( 備註:於初學時透過註解 3A Pattern 可幫助釐清觀念,熟悉後為維持程式碼的乾淨,並不會特別建議每次都備註唷!)


參考文章

https://freecontent.manning.com/making-better-unit-tests-part-1-the-aaa-pattern/
https://yu-jack.github.io/2020/10/05/unit-test-best-practice-part-4/
http://teddy-chen-tw.blogspot.com/2014/09/test-double1.html


上一篇
用 User Event 模擬使用者操作
下一篇
用 Mock 來模擬一個函式
系列文
<< 測試魔法 >> 這能動嗎?不然就測測看好了!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言